Systems and methods for dynamically creating hyperlinks associated with relevant multimedia content

ABSTRACT

The present disclosure relates to systems and methods for dynamically creating hyperlinks associated with relevant multimedia content in a computer network. A hyperlink generation module receives an electronic text file from a server. The module searches the text file to identify keywords present in the file. Once the keywords have been identified, a database is queried to identify multimedia content that is related to the keywords. Generally, multimedia content is associated with metadata to enable efficient searching of the multimedia content. Typically, the multimedia content is contextually relevant to both the identified keywords and text file. One or more hyperlinks corresponding to the keywords are then generated and inserted into the text file. The hyperlinks provide pointers to the identified multimedia content. After insertion into the text file, the hyperlinks may be clicked by a user or viewer of the file to retrieve and display the identified multimedia content.

CROSS REFERENCE TO RELATED APPLICATION

This application claims the benefit under 35 U.S.C. §119(e) of U.S.Provisional Patent Application No. 61/037,068, filed Mar. 17, 2008, andentitled “Systems and Methods for Dynamically Creating HyperlinksAssociated with Relevant Multimedia Content,” which is incorporatedherein by reference as if set forth herein in its entirety.

TECHNICAL FIELD

The present systems and methods relate generally to electronic textfiles, Internet websites, and multimedia content, and particularly tosystems and methods for automatically generating hyperlinks associatedwith multimedia content within electronic text files.

BACKGROUND

The Internet has made various forms of content available to users acrossthe world. For example, Internet users access websites to view articles,research particular topics of interest, watch videos, etc. Contentproviders and publishers (e.g. website providers) use the Internet todisplay articles or news stories, describe offered services, presentadvertising, and perform a host of other activities. Often, websitesinclude one or more “hyperlinks” that, when clicked via a mouse orcursor, direct an Internet user to additional content or information. Asused herein, a “hyperlink” refers to a directly followable reference(i.e. a relation between objects in which one object designates bylinking to another object) for use within an electronic text file orhypertext document. As is customary and understood in the art,hyperlinks are typically highlighted or presented in a color differentfrom their surrounding text to indicate to an Internet user that thehyperlink may be accessed for additional content.

Often, hyperlinks are used for linking to and/or displaying videos,images, other websites, articles, advertisements, etc. In somecircumstances, content providers use hyperlinks and their associatedcontent to retain Internet users at the providers' sites for longerperiods of time. It is generally assumed that the longer a user remainsat a website, the more advertising he or she will be exposed to, or themore interested he or she may become in the website content (and thusbecome a repeat viewer, subscribe to a membership, etc.), and the morepopular and profitable the website will become. Accordingly, contentpublishers often create hyperlinks to videos, images, related articles,etc., in the hopes of keeping users at the publishers' sites for longerperiods of time. For example, many content publishers assume that if anInternet user is reading an article on a website, the user would mostlikely be interested in a video or additional article related to thecontent of the initial article. Thus, it is highly beneficial to thepublisher to present hyperlinks to videos or other content that arecontextually relevant to the initial website content in the hopes thatthe user will interact with the hyperlinked content, and will therebycontinue viewing the particular website (and its associated content andadvertisements) instead of navigating to another site.

Traditionally, website developers or programmers manually create eachhyperlink in an electronic text file by hard-coding the link into thetext file. With the advent of electronic news media and the virtuallyreal-time availability of Internet content, it is extremely difficultfor programmers to keep up. For example, assuming a particular Internetpublisher of new stories desires to link to relevant videos within eachof its published news stories, website developers must continue tomanually create hyperlinks to related videos each time an additionalstory is published on the associated website. In a situation in whichthe content provider publishes new content rapidly and continuously, itcan become virtually impossible for programmers to generate hyperlinksfor each new content item, much less create links to content that iscontextually relevant to the original content item. Also, this manualhyperlink creation can be cumbersome, tedious, inefficient, andtime-consuming, as well as a drain on monetary resources that could beused for other business needs within a network environment.

In addition to being time-consuming and inefficient, because hyperlinksare manually created to point to videos or other content chosen by aprogrammer or website operator, the selected videos are often notrelevant or germane to the article of interest. For example, as timepasses, videos may become stale or forgotten, and thus highly relevantvideos are not associated with a particular article, either because theyare old and a programmer has forgotten them, or because the programmeris simply unaware of their existence. Considering the vast amount ofcontent available today over the web, it is infeasible for a programmerto be able to make intelligent decisions regarding linking of content toeach new published content item, especially considering the timeconstraints placed on the programmer. Thus, an Internet user clicking ahyperlink may be limited to viewing content, such as a video or list ofvideos, that is only marginally related, or not related at all, to theoriginal website content.

Additionally, many hyperlinks are programmed to return a further list ofhyperlinks, wherein the hyperlinks in the list are each associated withadditional content, videos, websites, etc. Typically, such a list isunranked and unorganized, and is often presented with no discernablestructure or organization. For example, the list may simply comprise acatalog of a given website's most current videos, regardless of content.Or, a list may include any and all videos stored on a website'sdatabase, with no selection or organization. In these circumstances, auser must tediously search through the plurality of videos or othercontent to find the content that is most relevant to the article orelectronic text file the user is viewing on the web page. This tedioussearching is not only annoying, but time-consuming, and there is noassurance that the user will discover videos that are relevant to theoriginal article, or with which the user would have an interest.

For these and many other reasons, there is a continuing need for asystem or method that dynamically generates or creates hyperlinks withinan electronic text file, and associates those hyperlinks with contentthat is contextually relevant to the electronic text file. There is afurther need for a system or method that ranks lists of hyperlinksassociated with an electronic text file according to the relevance ofthe linked content to the text file.

BRIEF SUMMARY OF THE DISCLOSURE

Briefly described, and according to one embodiment, the presentdisclosure is directed to a system for creating hyperlinks withinelectronic text files that link to multimedia content, wherein themultimedia content is contextually related to the electronic text files.The system comprises a server for hosting and displaying electronic textfiles to users, a database for storing the electronic text files andmultimedia content, and a hyperlink generation module that performs thesteps of generating and inserting hyperlinks into an electronic textfile. Specifically, the described embodiment of the hyperlink generationmodule receives an electronic text file from the server, scans theelectronic text file to identify one or more keywords in the electronictext file, queries the database as a function of the one or moreidentified keywords to identify multimedia content related to theidentified keywords based on metadata associated with the multimediacontent, generates a hyperlink for each of the one or more identifiedkeywords, wherein each generated hyperlink includes a pointer to theidentified multimedia content related to the respective keyword, andinserts the one or more generated hyperlinks into the electronic textfile for subsequent use.

According to one aspect, the step performed by the hyperlink generationmodule of querying the database further comprises the steps ofretrieving the multimedia content, extracting the metadata associatedwith the multimedia content, and comparing the extracted metadata to theone or more identified keywords to identify specific multimedia contentrelated to the one or more identified keywords.

According to another aspect, the one or more keywords are selected froma predefined list, dynamically generated, or identified via somecombination of both.

According to a further aspect, the electronic text files comprise filetypes selected from the group comprising: HyperText Markup Language(HTML) files, Extensible HyperText Markup Language (XHTML) files, andExtensible Markup Language (XML) files.

According to an additional aspect, the multimedia content comprises oneor more video files or audio files.

According to yet another aspect, the pointer to the identifiedmultimedia content includes a storage address in the database for theidentified multimedia content.

According to another embodiment, the present disclosure is directed to amethod, in a computer network, for dynamically creating one or morehyperlinks within an electronic text file. The method comprises thesteps of receiving an electronic text file, searching the electronictext file to identify one or more keywords in the electronic text file,querying a multimedia content database index based on the one or moreidentified keywords to identify multimedia content related to theidentified keywords as a function of metadata associated with themultimedia content, generating a hyperlink for each of the one or moreidentified keywords, wherein each generated hyperlink includes a pointerto the identified multimedia content related to the respective keywordfor subsequent retrieval of the multimedia content, and inserting theone or more generated hyperlinks into the electronic text file fordisplay to a viewer of the electronic text file. When activated or“clicked” by a viewer, the one or more inserted hyperlinks are used toretrieve and display the identified multimedia content to the viewer ofthe electronic text file within the computer network.

According to one aspect, the step of querying the multimedia contentdatabase index further comprises the steps of retrieving the multimediacontent, extracting the metadata associated with the multimedia content,and comparing the extracted metadata to the one or more identifiedkeywords to identify specific multimedia content related to the one ormore identified keywords.

According to another aspect, the identified multimedia content iscontextually related to the electronic text file.

According to a further aspect, the one or more keywords are selectedfrom a predefined list, dynamically generated, or identified via somecombination of both.

According to an additional aspect, the electronic text file comprises afile type selected from the group comprising: a HyperText MarkupLanguage (HTML) file, an Extensible HyperText Markup Language (XHTML)file, and an Extensible Markup Language (XML) file.

According to yet another aspect, the multimedia content comprises one ormore video files or audio files.

According to still another aspect, the pointer to the identifiedmultimedia content includes a storage address within the computernetwork for the identified multimedia content.

According to a further embodiment, the present disclosure is directed toa method, in a computer network, for automatically creating one or morehyperlinks within an electronic text file for subsequent display to oneor more viewers, wherein each of the one or more hyperlinks is linked toone or more videos that are contextually relevant to content of theelectronic text file. The method comprises the steps of receiving theelectronic text file from a web server, scanning the electronic textfile to identify one or more keywords in the electronic text file,retrieving a plurality of videos from a video database index, whereineach video in the plurality of videos is associated with one or moremetadata identifiers, and extracting the one or more metadataidentifiers from each video in the plurality of videos. Once extracted,the metadata identifiers are compared with the one or more identifiedkeywords to identify one or more matches between the identifiers andkeywords. For each identified keyword, the method further comprises thesteps of retrieving a storage address in a video database for each videoassociated with the one or more extracted metadata identifiers matchedto the respective keyword, associating the storage address for eachvideo with the keyword to generate a hyperlink code for the keyword, andinserting the generated hyperlink code into the electronic text file.After all hyperlink codes have been inserted, the electronic text fileis displayed to one or more viewers, and the inserted hyperlink codesare utilized to retrieve and display the one or more matched videos tothe one or more viewers of the text file.

According to one aspect, the one or more keywords are selected from apredefined list, dynamically generated, or identified via somecombination of both methods.

According to another aspect, the electronic text file comprises a filetype selected from the group comprising: a HyperText Markup Language(HTML) file, an Extensible HyperText Markup Language (XHTML) file, andan Extensible Markup Language (XML) file.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings illustrate one or more embodiments of thedisclosure and, together with the written description, serve to explainthe principles of the disclosure. Wherever possible, the same referencenumbers are used throughout the drawings to refer to the same or likeelements of an embodiment, and wherein:

FIG. 1 is a diagrammatic representation of an embodiment of a dynamichyperlink generation system that automatically generates and insertshyperlinks into electronic text files to associate multimedia contentwith the text files.

FIG. 2 shows a flow chart demonstrating the steps performed by anembodiment of the hyperlink generation module to dynamically createhyperlinks associated with relevant videos.

FIG. 3 is a flowchart illustrating the steps associated with oneembodiment of the hyperlink creation process.

FIG. 4 shows an exemplary terminal display illustrating an exemplaryelectronic text file displayed via an Internet website according to oneembodiment of the present system.

FIG. 5 shows an exemplary terminal display of an exemplary electronictext file with hyperlinks displayed via an Internet website according toone embodiment of the present system.

FIG. 6 illustrates an exemplary terminal display of an electronic textfile displaying a pop-up video in response to user interaction with ahyperlink in the text file according to one embodiment of the presentsystem.

FIG. 7 illustrates a terminal display of an exemplary hyperlink listingaccording to one embodiment of the present system.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

For the purpose of promoting an understanding of the principles of thepresent disclosure, reference will now be made to the embodimentsillustrated in the drawings and specific language will be used todescribe the same. It will, nevertheless, be understood that nolimitation of the scope of the disclosure is thereby intended; anyalterations and further modifications of the described or illustratedembodiments, and any further applications of the principles of thedisclosure as illustrated therein are contemplated as would normallyoccur to one skilled in the art to which the disclosure relates.

Aspects of the present disclosure generally relate to systems andmethods for automatically generating and inserting hyperlinks associatedwith multimedia content into electronic text files based on the contentof the text files. Generally, an electronic text file is analyzed toidentify keywords within the file. The identified keywords are used tosearch for and retrieve multimedia content related to the keywords.Typically, the multimedia content is associated with metadata thatenables the searching and retrieval of specific types of content. Onceretrieved, the multimedia content is associated with one or morekeywords to generate a hyperlink between the content and keywords. Afterit is generated, the hyperlink is inserted into the electronic text fileat the appropriate keyword location to create a link to the retrievedmultimedia content. Preferably, the generated hyperlinks create links tomultimedia content that is contextually relevant to the content of theelectronic text files. This process of dynamically generating andinserting hyperlinks into text files enables efficient creation ofhyperlinks for vast amounts of content on a recurring basis and/or onthe fly as new multimedia content and/or electronic text files becomeavailable.

Referring now to the drawings, FIG. 1 is a diagrammatic representationof an embodiment of a dynamic hyperlink generation system 10 thatautomatically generates and inserts hyperlinks into electronic textfiles to associate multimedia content with the text files. For exemplarypurposes and for ease of reference, the embodiment shown in FIG. 1 (andreferenced in other parts of this disclosure) represents a system 10 forlinking video files with electronic text files. As will be understoodand appreciated by one of ordinary skill in the art, however, othertypes of multimedia content (e.g. audio files, websites, digital images,etc.) are also linked to electronic text files according to variousother embodiments of the present system, and the present system is in noway limited to creation of hyperlinks that link to videos. In theembodiment shown, the system 10 includes a web server 20, a hyperlinkgeneration module 40, a video database 60, a content database 70, and avideo database index 80. The system 10 also includes a connection to oneor more viewers or users 95 via a network 90 (e.g. the Internet). Aswill be understood, although the embodiment of the system 10 shown inFIG. 1 includes only one of each of a web server, video database,content database, video database index, and hyperlink generation module,other embodiments of the present system include a plurality of each ofthese components. As will also be understood, according to oneembodiment, the content database 70, video database 60, and videodatabase index 80 are merged into a single database.

According to one embodiment, the web server 20 hosts data content, suchas web pages including electronic text files 30. Although the servershown in FIG. 1 represents a web server for hosting Internet activity,embodiments of the present system are not limited to such servers, andother servers (e.g. general-purpose servers within a networkedenvironment) are used according to various embodiments of the presentsystem. Examples of electronic text files 30 include, but are notlimited to, electronic documents, news and other content-relatedarticles, blog postings, message board postings, threaded discussions,emails, or any other text-based, computer-readable file. Generally, eachelectronic text file 30 within the system 10 comprises a HyperTextMarkup Language (HTML) file, an Extensible HyperText Markup Language(XHTML) file, an Extensible Markup Language (XML) file, or some othersimilar file type as will occur to one of ordinary skill in the art. Ina preferred embodiment, the electronic text files comprise HTML filesthat are hosted and displayed on a website to Internet users 95 via theweb server 20 and network 90.

In the embodiment shown in FIG. 1, electronic text files 30 are storedin the content database 70 for subsequent use. To initiate the dynamichyperlink creation and insertion process as described herein, a givenelectronic text file 30 is retrieved from the content database 70 by theweb server 20 and provided to the hyperlink generation module 40. Atthis stage, the text file generally does not include any hyperlinks,although some text files may include manually-coded hyperlinks, orhyperlinks generated during previous iterations via the hyperlinkgeneration module process 200 (described below). The hyperlinkgeneration module 40 analyzes the electronic text file to identifykeywords contained within the file. The keywords are identified andlocated within the electronic text file via one or more predeterminedalgorithms, as described in greater detail below. According to oneembodiment, the hyperlink generation module 40 comprises a third partycomponent external to the web server system and operated independentlyand separately from the web server network. According to anotherembodiment, the hyperlink generation module comprises a componentinternal to the web server's network.

Once identified, the keywords are used to query the video database index80 to identify and locate videos that are relevant or germane to thekeywords (and, typically, to the overall content of the electronic textfile 30). According to one embodiment of the present system 10, thevideo database index 80 stores indexed video files that have beenpre-associated with metadata related to content in the videos, such asthe subjects of the videos, people or actors in the videos, videotitles, video creation or publish dates, places described in the videos,or any other desired video content (described in greater detail below).Thus, the hyperlink generation module 40 queries the video databaseindex 80 as a function of the identified keywords to locate videos withmetadata identifiers that match or are somehow related to the keywords.

Once the relevant videos have been identified based on the keywords andrelated metadata, the hyperlink generation module 40 dynamicallygenerates a hyperlink for one or more of the identified keywords in theelectronic text file 30, thus providing a link for each keyword to theidentified video or videos (described in greater detail below).According to one embodiment, the video database index 80 includesindexed versions of video files (associated with metadata identifiers)that mirror the videos stored in video database 60. Generally, the videodatabase 60 stores the multimedia content associated with a given webserver 20. According to one embodiment, as videos are added or removedfrom video database 60, corresponding updates are made to the videodatabase index 80 via communication link 15. The hyperlink generationmodule 40 is able to access addresses and locations of videos stored invideo database 60 via communication link 15, and thus create pointers tothose videos for the generated hyperlink. Once generated, the hyperlinksare inserted into the electronic text file 30 by the hyperlinkgeneration module to transform the text file into an electronic textfile with hyperlinks 50.

Still referring to FIG. 1, after the hyperlinks have been inserted, thetext file with hyperlinks 50 is returned to the web server 20 where itis made available to users 95, or stored in the content database 70 forsubsequent use, or otherwise processed. As mentioned, in one embodiment,the hyperlinks associated with the keywords include pointers that pointto videos in the particular web server's 20 video database 60 based onthe addresses (i.e. storage locations or identifiers) of those videos inthe database. According to one embodiment, when an electronic text filewith hyperlinks 50 is made available for viewing by users 95, theidentified videos are retrieved from the video database 60 and stored inmemory. Thus, if a user clicks on a hyperlink in the text file 50, thesystem is able to quickly display the associated video (or list ofvideos) to the user. In another embodiment, rather than storing thevideos in memory, an access call is made to the video database 60 toretrieve the associated video(s) each time a user 95 interacts with ahyperlink. Regardless of how identified videos are stored within eachembodiment, the present system 10 enables dynamic creation of hyperlinkswithin electronic text files and display of relevant multimedia contentto users based on the content in the text files.

Referring now to FIG. 2, a flow chart is shown demonstrating the stepsperformed by a hyperlink generation module 40 to dynamically createhyperlinks associated with relevant videos according to one embodimentof the present system. Again, as mentioned previously, while exemplaryembodiments of the present system are described in relation tohyperlinks associated with video content, hyperlinks are created withother content types according to various other embodiments. Initially,as described above, an electronic text file 30 is received by thehyperlink generation module 40 from a web server 20 (step 205). As willbe understood and appreciated, the hyperlink generation process 200 isperformed on a looping and continual basis as new electronic text filesand/or video content is received by the system 10. Thus, one embodimentof the system repeats process 200 for a new electronic text file eachtime such a file is created within or received by the system. Accordingto another embodiment, process 200 is repeated for each electronic textfile in the system as new video content is received by or created withinthe system to ensure that the most relevant and up-to-date video contentis linked to the text files. Accordingly, in some embodiments, process200 is performed not only on electronic text files 30, but also onelectronic text files with hyperlinks 50 to ensure that hyperlinkedvideo content is relevant and current. As will be understood andappreciated, the hyperlink generation module process 200 may beperformed in a variety of ways as desired by a system operator and aswill occur to one of ordinary skill in the art.

At step 210 in FIG. 2, the hyperlink generation module 40 identifies oneor more keywords within the electronic text file 30. The keywords mayrelate to virtually any content within the electronic text file, such asnames, places, dates, things, action words, acronyms, etc. As will beunderstood by one having ordinary skill in the art, the keywords may bedetermined in any number of ways. According to one embodiment of thepresent system, keywords are predefined by a system operator, and thehyperlink generation module scans the electronic text file via asearching algorithm to determine if any of the keywords in thepredefined list of keywords are included in the text file. For example,some system operators may desire only to link particular types of videocontent to electronic text files, regardless of the subject matter ofthe text files. Thus, the system operator may define a set of keywordsthat link to that particular type of video content.

A particularly relevant application of use of predefined keywords is inthe marketing or advertising context. For example, an automobilemanufacturer may want to display videos (e.g. commercials) related toits products to users 95 based on relevant keywords such as “car”,“automobile”, “hybrid”, “gasoline”, etc. Thus, the automobilemanufacturer is able to contract with a content provider to generatehyperlinks related to the manufacturer's products each time a predefinedkeyword appears in the content provider's hosted content (i.e.electronic text files). As will be understood, predefined keywords maybe used for other applications not herein described, as will occur toone having ordinary skill in the art.

In another embodiment, keywords are defined and identified through theuse of Natural Language Processing (NLP) of the text. In general, NLPsystems convert samples of human language into more formalrepresentations that are easier for computer programs to manipulate.According to one embodiment, the NLP system comprises a form of“computational linguistics,” which includes the statistical and/orrule-based modeling of natural language from a computationalperspective. For example, one embodiment of the present system uses atf-idf (term frequency-inverse document frequency) weighting to evaluatehow important or relevant a term or word is to an electronic text fileor collection of text files. The number of times a term occurs in anelectronic text file or document is called its “term frequency”.However, because many words are common (e.g. “the”, “for”, etc.), simplyusing words with the highest term frequency as the keywords willincorrectly emphasize common words. Hence, an “inverse documentfrequency” factor is incorporated that diminishes the weight of termsthat occur very frequently in the text file or collection of files andincreases the weight of terms that occur less frequently. Accordingly,one embodiment of the present system utilizes a searching algorithm(e.g. a contextualizer screen) to analyze all words in an electronictext file 30 and determine the tf-idf weighting for each word. Wordsthat have tf-idf weightings above a predetermined threshold are definedas the keywords for the particular text file. Further examples andexplanations of tf-idf processes are described in Salton, G. andBuckley, C., Term-Weighting Approaches in Automatic Text Retrieval,Information Processing and Management 24 (5), pp. 513-23 (1988), whichis incorporated herein by reference as if set forth herein in itsentirety. As will be understood and appreciated, various forms of NLPand tf-idf weighting are used according to various embodiments of thepresent system 10.

According to a preferred embodiment, NLP is used in combination withlists of predefined terms to determine keywords based on relevant orrecent topics, news stories, etc. The keywords are determined by akeyword generation algorithm that spiders the Internet and collects asampling of news articles and other related content, and then extractspopular names and/or topics from the collected set. The extracted namesand topics are used to define a predetermined list of keywords forkeyword identification in electronic text files 30 and subsequenthyperlink generation. According to one embodiment, popular names areextracted based on heuristics (e.g. Mr. President, Mrs. President, etc.)(for further explanation of heuristics, see Pearl, Judea, Heuristics,Addison-Wesley Publishers (1984), which is incorporated herein byreference as if set forth herein in its entirety), predefined lists offirst and/or last names (e.g. famous names associated with celebrities,political leaders, etc.), and the term frequency of recognized names.Thus, based on these heuristics, predefined lists, and term frequencies,the keyword generation algorithm is able to determine names that arementioned frequently or are in the news over a predefined time period(e.g. the past few days), and define those names as keywords.

In the preferred embodiment, popular topics are extracted based onN-grams and the term frequency of extracted/recognized N-grams. As willbe understood by one of ordinary skill in the art, an N-gram comprises asub-sequence of N items from a given sequence. Generally, N-gram modelsare a type of probabilistic model used for predicting the next item in asequence. For example, the items in the sequence may be phonemes,syllables, letters, words, base pairs, etc. Preferably, bigrams(sequences of two words) and trigrams (sequences of three words) areused for scanning a content collection. Thus, based on the frequency ofphrases in the collection, the keyword generation algorithm identifiespopular phrases (i.e. topics) and defines those phrases as keywords(specifically, sequences of terms comprising a keyword set). As will beunderstood and appreciated, various sizes of N-grams are used accordingto various embodiments, and the present system is not limitedspecifically to the use of bigrams and trigrams.

Still referring to FIG. 2, regardless of the method used to definekeywords, a searching algorithm is used to scan the electronic text file30 to identify any keywords that match the defined keywords. After thekeywords have been identified, the hyperlink generation module 40queries the video database index 80 to identify one or more videosassociated with those keywords (step 215). According to one embodiment,if many keywords are identified within a given electronic text file,then the system only retrieves videos and creates hyperlinks for asubset of the identified terms (e.g. the ten terms with the highesttf-idf weights) as defined by a system operator. As describedpreviously, in one embodiment, the stored videos are tagged and indexedvia metadata identifiers according to content within the videos toenable efficient and scalable searching of all indexed videos based uponthe metadata identifiers. The metadata identifiers or attributes areassociated with a variety of content elements within the videos, such aspeople or actors in the videos, objects in the videos, places shown ordescribed in the videos, video scenes, subject matter, etc. Variousmethods are known for analyzing and associating metadata with videos toenable indexing and searching of the videos, such as those described inU.S. Patent Publication No. 2002/0108112 to Wallace et al., and U.S.Patent Publication No. 2004/0237101 to Davis et al., both of which areincorporated herein by reference as if set forth herein in theirentireties. Alternatively, some videos are tagged with metadata whenthey are created (e.g. commercials). Thus, in one embodiment, all videosare associated with metadata based on each video's content before thevideos can be searched and subsequently linked to electronic text files.

As mentioned, the hyperlink generation module 40 queries the videodatabase index 80 using the identified keywords to identify video fileswith metadata corresponding to the keywords. Generally, videos aresearched for and retrieved separately for each identified keyword (orset of keywords, such as with an N-gram, a first and last namecombination, etc.), such that each keyword or keyword set is linked toits respective identified video content. According to one embodiment ofthe present system, the hyperlink generation module searches for andretrieves videos as a function of predefined system settings as definedby a system operator. For example, one aspect of the system simplyretrieves all videos that have one or more of the identified keywords inthe title of each video. Alternatively, another aspect only retrievesvideos with actor- or person-related metadata that matches keyword namesidentified in text files. Still a further aspect retrieves videosassociated with metadata identifiers that match all the keywords in agiven electronic text file, or some predetermined percentage of theidentified keywords. As will be understood by one of skill in the art,the method in which a video or videos are retrieved for inclusion in ahyperlink may be varied as desired by a system operator. Preferably,because keywords are generally related to the overall content of anelectronic text file 30, it is assumed that retrieved videos are also sorelated, and a user 95 viewing the text file will have an interest inthe related video content.

Still referring to FIG. 2, once the video files have been identified orselected by the hyperlink generation module 40, a hyperlink isautomatically created for each keyword corresponding to the retrievedvideo or videos for that keyword, as described in greater detail belowin conjunction with the hyperlink code creation process 300 shown inFIG. 3. To avoid redundancy, some embodiments of the present system 10only create a hyperlink for the first instance (or some limited numberof instances) of each keyword in an electronic text file (e.g. if 100instances of the name “Obama” are identified in a text file, the systemonly creates a hyperlink for the first instance or first few instances).Once generated, each hyperlink (i.e. the program code associated witheach hyperlink) is inserted into the electronic text file at itsappropriate keyword location (step 220). Generally, hyperlinks arewritten in the same programming language as is the electronic text file.For example, in a preferred embodiment, because electronic text filescomprise HTML format, hyperlinks are also written in such format. Afterall hyperlinks have been inserted, the electronic text file 30 isthereby transformed into an electronic text file with hyperlinks 50, andis returned to the web server 20 for display to users 95 or for othersubsequent use (step 225).

FIG. 3 is a flowchart illustrating the steps associated with oneembodiment of the hyperlink code creation process 300. The stepsillustrated in process 300 are performed for each keyword and video(s)combination identified via process 200. As will be understood, accordingto one embodiment, the steps shown in FIG. 3 are carried outautomatically by a computer algorithm such that no manual or humancoding is required. Initially, the keywords and videos that wereidentified during the hyperlink generation module process 200 areretrieved for use in hyperlink creation (steps 305, 310). At step 315,the system identifies the addresses or locations of the identifiedvideos within the video database 60. As mentioned previously, in oneembodiment of the present system, the video database index 80 storesindexed and metadata-associated file instances of the videos containedin the video database 60, and the content of both databases is updatedcorrespondingly via communication link 15 as videos are added to orremoved from either database. Accordingly, as videos are identified inthe video database index 80, the storage addresses or filenames of thecorresponding videos in the video database 60 can be obtained by thehyperlink generation module 40 via link 15. These storage addresses,filenames, or other location identifiers are used to point to theassociated video content for each respective hyperlink.

After the location identifiers or addresses have been obtained for eachvideo associated with a given keyword, the keyword (or keyword set) isassociated with the identified video address(es) according to apredefined hyperlink program code to create the hyperlink code for therespective keyword (step 320). An exemplary HTML hyperlink code isrepresented as follows:

<a href=“video address”>keyword</a>

wherein “video address” represents the identified storage location ofthe video, and keyword represents the respective identified keyword.Once generated, the hyperlink code is inserted into the electronic textfile 30 at the appropriate keyword location (discussed above inreference to step 220 in FIG. 2). As will be understood and appreciatedby one of ordinary skill in the art, while an HTML hyperlink code formatis shown, the hyperlinks may be configured according to various knownmethods so long as the hyperlink retrieves and displays the identifiedand appropriate video content when clicked by a user 95.

Referring now to FIG. 4, an exemplary terminal display 400 is shownillustrating an exemplary electronic text file 30 displayed via anInternet website. As shown, the exemplary electronic text file comprisesa news article discussing a presidential address regarding an economicstimulus package. As mentioned previously, electronic text files 30 maycomprise articles, blog postings, threaded discussions, emails, andother similar text-based files. As shown, the electronic text file 30represented in FIG. 4 includes no hyperlinks, thus indicating it has notyet been processed according to an embodiment of the present system.

FIG. 5 shows a terminal display 500 of an exemplary electronic text filewith hyperlinks 50 displayed via an Internet website. The text file withhyperlinks shown in FIG. 5 corresponds to the same text file representedin FIG. 4, but at a time subsequent to the file being processed toinclude dynamically-created hyperlinks associated with identifiedkeywords. As shown, hyperlinks 505, 510, 515, 520 were created andinserted in the text file for the terms “Obama” (and “Barack Obama”),“stimulus package”, “recession”, and “Hillary Clinton”, respectively.These representative hyperlinks were generated and inserted into thetext file based on the file's content according to the methods asdescribed previously in connection with FIGS. 2 and 3. As one ofordinary skill in the art will understand, the hyperlinked terms shownin FIG. 5 are presented for illustrative purposes only, and many otherterms within the electronic text file could have been selected askeywords and thereby hyperlinked depending upon the predefinedattributes of the algorithms or computer programs used to generate thehyperlinks according to a particular embodiment of the present system.Additionally, although the hyperlinked terms are shown in bold andunderlined, it will be understood that hyperlinks are represented in avariety of known manners according to various embodiments of the presentsystem.

According to one embodiment and as described previously, when a user 95clicks on one of the generated hyperlinks, a video 605, videos, or listof further video hyperlinks 705 is returned that is or are relevant tothe particular keyword selected and, preferably, the overall content ofthe electronic text file 50. If a single video is hyperlinked to thekeyword, then, depending on the embodiment, when the hyperlink isclicked by a user 95, that video is displayed via a pop-up window 605 onthe website (shown in FIG. 6), or the user is directed to a separatewebpage where the video is displayed, or the video is presentedaccording to some other known technique.

As shown in FIG. 6, a video of President Obama addressing Congressregarding an economic stimulus package is displayed to a user via apop-up window 605. The display of this video is in response to the userclicking on one of the hyperlinks in the electronic text file withhyperlinks 50 shown in FIG. 5. As described previously, preferably, thevideo content is highly-relevant to the text file content. Thus, asshown in FIG. 6, the content of the video (i.e. the President addressingCongress regarding a stimulus package) is contextually related to thecontent of the text file (i.e. a discussion of the President's addressto Congress regarding the stimulus package). As mentioned previously,while videos are preferably contextually related to text file content,embodiments of the present system 10 are able to link multimedia contentto keywords based on a variety of desired criteria.

According to another embodiment, rather than displaying a single video,the system displays a list of hyperlinks 705 (i.e. list of links tofurther videos) in response to user interaction with a keywordhyperlink. FIG. 7 illustrates a terminal display 700 of an exemplaryhyperlink listing according to one embodiment of the present system. Aswill be understood and appreciated, a plurality of videos may apply orbe relevant to a single keyword (or keyword phrase/set), and thus a listof those videos is presented to a user in response to the hyperlinkedkeyword being clicked. Generally, the list 705 includes icons or furtherclickable links to the videos themselves. Depending on the embodiment,if icons are presented, the icons comprise clickable thumbnailrepresentations of the videos, or short titles of the videos, etc. Inone embodiment, each hyperlinked phrase or icon in the list comprisesthe title of its respective video. As will be understood, the list ofhyperlinks 705 may be presented via a pop-up window, or on a separatewebpage, etc.

Preferably, if a list of hyperlinks 705 is displayed to a user 95, thehyperlinks are ranked based on their relevance to the content of theelectronic text file 50. The exemplary list of hyperlinks shown in FIG.7 corresponds to the “Obama” or (“Barack Obama”) keywords in theelectronic text file with hyperlinks 50. Accordingly, as demonstrated bythe hyperlink titles associated with the videos, the videos generallyinclude some reference to Barack Obama. However, videos that are relatednot only to the keyword (i.e. “Obama”), but also to the general contextof the text file (i.e. recession, stimulus package, politics,influential leaders, etc.) are displayed as well. Videos that includehigh relevance to both the keyword and the overall context of the textfile are preferably displayed first, so that a user 95 is more likely toview the videos. Videos are deemed highly-relevant to the text filecontent based on a variety of methods, including ranking videos firstthat have high percentages of metadata that match extracted keywordsfrom the text file, or simply ranking the most recent (i.e. newest)videos first, etc. As will be understood, videos may be ranked in avariety of manners based on the parameters of a given embodiment of thesystem.

The foregoing description of the exemplary embodiments has beenpresented only for the purposes of illustration and description and isnot intended to be exhaustive or to limit the inventions to the preciseforms disclosed. Many modifications and variations are possible in lightof the above teaching.

The embodiments were chosen and described in order to explain theprinciples of the inventions and their practical application so as toenable others skilled in the art to utilize the inventions and variousembodiments and with various modifications as are suited to theparticular use contemplated. Alternative embodiments will becomeapparent to those skilled in the art to which the present inventionspertain without departing from their spirit and scope. Accordingly, thescope of the present inventions is defined by the appended claims ratherthan the foregoing description and the exemplary embodiments describedtherein.

What is claimed is:
 1. A system for creating hyperlinks withinelectronic text files that link to multimedia video content, wherein themultimedia video content is contextually related to the electronic textfiles, comprising: a content database storing electronic text files; avideo database storing multimedia video content; a web server configuredto send content to requesting user devices, the content including theelectronic text files and the multimedia video content; a hyperlinkgeneration module in communication with the content database and thevideo database, configured to execute computer-implemented steps of:retrieving an electronic text file from the content database; analyzingthe electronic text file by term weighting words in the electronic textfile to identify one or more keywords contextually relevant to theelectronic text file; for at least one keyword of the one or morekeywords: querying a video database to identify at least one multimediavideo content item related to the at least one keyword, the multimediavideo content item identified by comparing the at least one keyword tometadata associated with the multimedia video content; generating atleast one hyperlink for the keyword, the generated hyperlink including apointer to the identified multimedia video content item related to theat least one keyword; inserting a keyword hyperlink into the electronictext file prior to the web server sending the electronic text file to auser device, the keyword hyperlink linking the at least one keyword to adisplay based on the generated hyperlink; responsive to inserting thekeyword hyperlink into the electronic text file, and prior to receivinga request for the multimedia video content item, copying the multimediavideo content item from the video database into a particular memory,from which the web server is configured to quickly access the multimediavideo content when requested by the user device from the electronic textfile.
 2. The system of claim 1, wherein querying a database of the oneor more databases further comprises: retrieving a plurality ofmultimedia video content items; extracting the metadata associated withthe multimedia video content.
 3. The system of claim 1, wherein theelectronic text files include one or more of: electronic documents, newsand other content-related articles, blog postings, message boardpostings, threaded discussions, email messages, text-basedcomputer-readable files, HyperText Markup Language (HTML) files,Extensible HyperText Markup Language (XHTML) files, Extensible MarkupLanguage (XML) files, or webpages.
 4. The system of claim 1, wherein thepointer includes a storage addresses in the database for the identifiedmultimedia content item.
 5. In a computer network, a method fordynamically creating one or more hyperlinks within an electronic textfile, comprising the steps of: analyzing the electronic text file byterm weighting words in the electronic text file to identify one or morekeywords contextually relevant to the electronic text file; for at leastone keyword of the one or more keywords: querying a multimedia contentdatabase to identify at least one multimedia video content item relatedto the at least one keyword, the multimedia video content itemidentified by comparing the at least one keyword to metadata associatedwith multimedia video content in the multimedia content database;generating at least one hyperlink for the keyword, the generatedhyperlink including a pointer to the identified multimedia video contentitem related to the keyword for subsequent retrieval of the multimediavideo content item; inserting a keyword hyperlink into the electronictext file prior to a web server sending the electronic text file to auser device, the keyword hyperlink linking the at least one keyword to adisplay based on the generated hyperlink; responsive to inserting thekeyword hyperlink into the electronic text file, and prior to receivinga request for the multimedia video content item, copying the multimediavideo content item from the multimedia content database into aparticular memory; the web server responding to a request from the userdevice for the multimedia video content item by accessing the multimediavideo content item from the particular memory.
 6. The method of claim 5,wherein querying the multimedia content database index furthercomprises: retrieving a plurality of multimedia video content items;extracting the metadata associated with the multimedia video content. 7.The method of claim 5, wherein the identified plurality of multimediavideo content items are contextually related to the electronic textfile.
 8. The method of claim 5, wherein the electronic text fileincludes one or more of: an electronic document, a news and othercontent-related article, a blog posting, a message board posting, athreaded discussion, an email, a text-based computer-readable file, aHyperText Markup Language (HTML) file, an Extensible HyperText MarkupLanguage (XHTML) file, an Extensible Markup Language (XML) file, or awebpage.
 9. The method of claim 5, wherein the pointer includes storageaddresses within the computer network for the identified multimediavideo content item.
 10. A method for automatically creating one or morehyperlinks within an electronic text file, wherein each hyperlink of theone or more hyperlinks is linked to one or more videos that arecontextually relevant to content of the electronic text file, the methodcomprising: receiving an electronic text file from a content database;analyzing the electronic text file by term weighting words in theelectronic text file to identify one or more keywords contextuallyrelevant to the electronic text file; retrieving a plurality of videosfrom a video database, each video in the plurality of videos associatedwith one or more metadata identifiers; extracting the one or moremetadata identifiers from each video in the plurality of videos;comparing the one or more extracted metadata identifiers with the one ormore identified keywords to identify a plurality of matches between theone or more extracted metadata identifiers and the one or moreidentified keywords; for at least one keyword in the one or moreidentified keywords: retrieving a storage address in the video databasefor at least one multimedia video content item associated with the oneor more extracted metadata identifiers matched to the respectivekeyword; associating the storage address for the multimedia videocontent item with the keyword to generate at least one hyperlink for thekeyword; and inserting a keyword hyperlink into the electronic textfile, the keyword hyperlink linking the at least one keyword to adisplay based on the generated hyperlink; storing the electronic textfile with the inserted keyword hyperlink in the content database; inresponse to a request for the electronic text file, sending theelectronic text file with the inserted keyword hyperlink to a clientdevice and, prior to receiving a request for the multimedia videocontent item, copying the multimedia video content item from the videodatabase into a particular memory; responding to a request from the userdevice for the multimedia video content item by accessing the multimediavideo content item from the particular memory.
 11. The method of claim10, wherein the electronic text file includes one or more of: anelectronic document, a news and other content-related article, a blogposting, a message board posting, a threaded discussion, an emailmessage, a text-based computer-readable file, a HyperText MarkupLanguage (HTML) file, an Extensible HyperText Markup Language (XHTML)file, an Extensible Markup Language (XML) file, or a webpage.
 12. Thesystem of claim 1, the computer-implemented steps further comprising:subsequent to inserting the keyword hyperlink into the electronic file,the hyperlink generation module inserting into the electronic text fileone or more different hyperlinks to different multimedia video contentitems.
 13. The system of claim 1, wherein querying the video databasecomprises querying the video database using a subset of the at least onekeyword.
 14. The method of claim 5, further comprising automaticallyupdating the generated plurality of hyperlinks, after inserting thekeyword hyperlink, in response to an update to the multimedia videocontent.
 15. The method of claim 5, wherein querying the multimediacontent database comprises querying the multimedia content databasebased on a subset of the at least one keyword.
 16. The method of claim10, further comprising, after storing the electronic text file with theinserted keyword hyperlink in the video database, automaticallyrepeating retrieving the storage address, associating the storageaddress, inserting the keyword hyperlink, and storing the electronictext file with the inserted keyword hyperlink.
 17. The method of claim16, wherein automatically repeating retrieving the storage address,associating the storage address, inserting the keyword hyperlink, andstoring the electronic text file with the inserted keyword hyperlinkoccurs on a recurring basis.
 18. The method of claim 16, whereinautomatically repeating retrieving the storage address, associating thestorage address, inserting the generated hyperlink code, and storing theelectronic text file with the one or more inserted hyperlink codes occuras new videos become available.